package com.open.rbac.service.sys;

import java.util.List;
import java.util.Map;

import com.open.rbac.model.dto.sys.OrganizationDto;
import com.open.rbac.model.vo.sys.OrganizationVo;


/**
 * 组织机构服务
 *
 * @author Riche's
 * @since 2022/8/24
 */
public interface IOrganizationService {

    OrganizationDto create(OrganizationVo organizationVo);

    OrganizationDto update(OrganizationVo organizationVo);

    OrganizationDto findById(String id);

    void deleteById(String id);

    void enable(String id);

    void disable(String id);


    List<OrganizationDto> tree(OrganizationVo organizationVo);

    List<String> listChildIdsById(String id);

    Map<String, List<OrganizationDto>> mapByUserIds(List<String> userIds);
}
